<
specifier, attribute>
pairs.
In the default column, `\n
' and `\t
' denote a new line
and a tab, respectively. These parameters can be further divided into
the following groups:
|
Context. Together, preamble
and postamble
define the context in which the index is to be formatted.
Starting Page. The starting page number can either be supplied
by the user or retrieved automatically from the document transcript.
In either case, this number can be enclosed with setpage_prefix
and setpage_suffix
to yield a page number initializing command.
New Group/Letter. The string bound to group_skip
denotes the extra vertical space needed when a group is started.
For a group beginning with a different letter,
the parameters lethead_prefix
and lethead_suffix
(both with
a default nil string) denote the group heading.
The flag lethead_flag
has a default value of 0, which
means other than group_skip
nothing else will be inserted before
the group.
On the other hand, if this flag is positive, the strings bound
to lethead_prefix
and lethead_suffix
will be inserted with
an instance of the new letter in uppercase in between. Similarly,
a lowercase letter will be inserted if the flag is negative.
Entry Separators. This group includes everything with the
item_
prefix. First, item_
i
denotes the command and indentation to be inserted when
a key is started from a level greater than or equal to i.
Second, item_
ij has a similar meaning, but with
i = j - 1. Finally, the two item_x
j's
are included to handle the situation where the parent level has no
page numbers. Some styles require cases like these to be
different from those with page numbers.
Table 2 depicts a system that supports three levels of
subindexing. In general, suppose n is the number of index
levels supported, there will be n item_
i's
(
0≤i≤n - 1), (n - 1) item_
ij's
(
1≤j≤n - 1, i = j - 1), and
(n - 1) item_x
j's (
1≤j≤n - 1).
Page Delimiters. Each level has a key/page delimiter
that defines what is to be inserted between a key and its first
page number. The inter-page delimiter is specified by delim_n
,
while the range designator is given by delim_r
.
Page Encapsulator. The attributes of
encap_prefix
, encap_infix
, and encap_suffix
form what is to be placed into the output
when an encapsulator is specified
for a certain entry. Suppose foo
is the specified encapsulator
and N
is the page number, the output sequence is
encap_prefix foo encap_infix N encap_suffix
Page Precedence. Five different types of numerals are
supported by most systems for page numbering. These are
lowercase roman (r
), numeric or arabic (n
),
lowercase alphabetic (a
), uppercase roman (R
),
and uppercase alphabetic (A
). The string bound to
page_precedence
(default "rnaRA"
)
specifies their order.
Line Wrapping. In the output index file,
the merged list of page numbers can be wrapped in multiple lines,
if it is longer than line_max
. The newly wrapped
line is indented by indent_space
whose length is
indent_length
. This artificial line wrapping does not
make any difference in formatting, but does provide increased
readability for the pre-formatted final index.
This feature may seem somewhat trivial at first glance, but if no
formatters are involved whatsoever, the readability of the
verbatim output index is important.